/** 
 * 首页视频处理
 * */
 
 
 
 
 
 // 查询数据缓存，判断是否存在视频文件
 function getIndex(){
 	var resList = getIndexCache();
 	var list = resList.list;
 	var sys = getSys();
 	if (list.length==0) {
 		// 没有数据，去请求
 		getIndexReqList();
 	} 
	// mui.toast(list[0].localLink); return
 	// 有数据，查询视频
 	var vdown = new Array(); //未下载数组
 	var vplay = new Array() //已下载未播放数组
 	for (var i=0;i<list.length;i++) {
 		// 未下载
 		if (list[i].isDown==0) {
 			vdown.push(list[i]);
 		}
 		// 已下载、未播放的
 		if (list[i].isDown!=0 && list[i].isPlay==0) {
 			vplay.push(list[i]);
 		}
 	}
 	// 有视频文件
 	if (vplay.length > 0) {
		var vpid = vplay[0].videoId;
 		var vpimg = vplay[0].videoImg;
 		var vplink = vplay[0].localLink;
 		mui("#vd")[0].innerHTML = '<video poster="'+vpimg+'" src="'+vplink+'" type="video/mp4" name="media" controls="controls" autoplay="autoplay" loop id="video-1" class="app-video-tag"></video>';
		// 更新播放标识
		setVideoPlayCache(vpid);
 	}
 	// 未下载的，去下载
 	if (vdown.length > 0) {
 		var vdid = vdown[0].videoId;
 		var vdname = vdown[0].videoName;
 		var vdlink = vdown[0].videoLink;
 		createDownload(vdid,vdname,vdlink);
 	}
 }
 // 先下载数据
 function getIndexReqList(){
 	var sys = getSys();
 	if (sys.day==0 || sys.appAccess=='') {
 		mui.toast('参数错误',{ 
 			duration:'long', type:'div',
 		});
 		return
 	}
 	var resList = getIndexCache(); //数据缓存
 	var idstr = resList.idstr;
 	mui.ajax(sys.domain+'/app/video/one',{
 		data:{
 			appAccess: sys.appAccess,
 			idstr:idstr
 		},
 		dataType:'json', //服务器返回json格式数据
 		type:'post', //HTTP请求类型
 		timeout:10000, //超时时间设置为10秒
 		headers:{'Content-Type':'application/x-www-form-urlencoded'}, 
 		success:function(res){
 			// mui.toast(res.code); return
 			var p = '';
 			if (res.code!=0) {
 				p = '<button type="button" class="mui-btn mui-btn-block noDataBtn">没有视频了</button>';
 				mui("#more")[0].innerHTML = p;
 				// setTimeout(function(){
 				// 	jumpToIndexHistory();
 				// }, 2000);
 				return
 			}
 			// mui.toast('01'); return
 			var one = res.data;
 			var v = {
 				videoId:one.videoId,
 				videoTitle:one.videoTitle,
 				// 文件名称，不支持中文
 				videoName:one.videoName,
 				videoImg:one.videoImg,
 				videoRatio:one.videoRatio,
 				videoLink:one.videoLink,
 				// 视频文件是否下载：0未下载，1已下载
 				isDown:0,
 				// 视频文件是否播放：0未播放，1已播放
 				isPlay:0,
 				// 用户端自定义标题
 				localName:'',
 				// 用户端封面图片地址
 				localImg:'',
 				// 用户端视频文件地址
 				localLink:''
 			};
 			// mui.toast('v'+v); return
 			setIndexCache(v); //更新缓存
 			mui('#refresh').pullRefresh().endPullupToRefresh(false); // 继续下拉
 			// 去下载视频文件
 			var vid = one.videoId;
 			var vname = one.videoName;
 			var vlink = one.videoLink; 
			// mui.toast(vlink); return
 			createDownload(vid,vname,vlink);
 		},
 		error:function(xhr,type,errorThrown){
 			mui.toast('网络错误！',{ 
 				duration:'short', type:'div',
 			});
 		}
 	});
 }
 // /** 
 //  * 下面是下载文件的处理
 //  * */ 
 // var fname = '001.mp4';
 // var fpath = 'http://tsh.fuzhuangchangongxiao.cn/uploads/20200221/'+fname;
 /** 
  * 判断下载
  * fid 视频ID
  * fname 视频名称
  * flink 视频链接
  * */ 
 function createDownload(fid,fname,flink){
 	mui.plusReady(function () {
 		//判断文件是否已经下载
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/'+fname,
 			function(entry){
 				if(entry.isFile){
 					// mui('#vvv')[0].innerHTML = '<video poster="" src="'+entry.fullPath+'" type="video/mp4" name="media" controls="controls" autoplay="autoplay" loop id="video-1" class="app-video-tag"></video>/>';
 					// mui('#vtmp')[0].innerHTML = entry.fullPath; 
 					mui.toast(entry.fullPath+'已经下载');
					// // 下载完，去请求新数据
					// getIndexReqList();
 				}
 			},
 			function(e){dBase(fid,fname,flink);}
 		);
 	})
 }
 /** 
  * 下载动作
  * fid 视频ID
  * fname 视频名称
  * flink 视频链接
  * */ 
 function dBase(fid,fname,flink){
	 // mui.toast(flink); return
     dtask = plus.downloader.createDownload(
         flink,
         {method:"GET"},
         //下载完成执行的回调函数
         function(d, status){
 			// mui('#vtmp')[0].innerHTML = task.filename;
             mui.toast(d.filename);
 			// 下载完，去请求新数据
 			getIndexReqList();
         }
     );
     dtask.addEventListener("statechanged", function(task,status){
         if(!dtask){return;}
         switch(task.state) {
             case 1: // 开始
                 mui.toast("开始下载...");
             break;
             case 2: // 已连接到服务器
                 mui.toast( "链接到服务器...");
             break;
             case 3:    // 已接收到数据
 				mui.toast((task.downloadedSize/task.totalSize)*100+'%');
             break;
             case 4:    // 下载完成
 				// mui('#vtmp')[0].innerHTML = task.filename;
                mui.toast( "下载完成！");
 				// 下载完，更新缓存数据
				// mui.toast(task.filename); return
				setVideoDownCache(fid,task.filename);
 				// // 下载完，去请求新数据
 				// getIndexReqList();
             break;
         }
     });
     dtask.start();
 }
 //获取数据缓存
 function getIndexCache(){
 	var resList = cacheGet(indexList);
 	if (!resList) {
 		var list = new Array(),  //数据数组
 			idstring = ''; //ID字符串集合
 		return {
 			// 数据数组
 			list: list,
 			// 历史ID集合
 			idstr: idstring
 		};
 	}
 	return resList;
 }
 /** 
  * 设置数据缓存
  * one 新数据一个
  * */
 function setIndexCache(one){
 	var resList = getIndexCache();
 	var list = resList.list,  //数据数组
 		idstring = resList.idstr; //历史ID字符串集合
 	if (list.length==0) {
 		idstring = one.videoId;
 	} else {
 		idstring = idstring+','+one.videoId;
 	}
 	list[list.length] = one;
 	var indexNew = {
 		// 数据数组
 		list: list,
 		// 历史ID字符串集合
 		idstr: idstring,
 	};
 	cacheSet(indexList, indexNew);
 }
 /** 
  * 设置文件下载缓存
  * vid 视频ID
  * vlink 视频本地址
  * */ 
 function setVideoDownCache(vid,vlink){
	 var resList = getIndexCache();
	 var list = resList.list;
	 if (list.length==0) {
		 mui.toast('没有缓存'); return
	 }
	 for (var i=0;i<list.length;i++) {
		 if (list[i].videoId==vid) {
			 if (list[i].isDown==0) {
				 // 下载中
				 resList.list[i].isDown = 1;
			 } else {
				 // 下载完成
				 resList.list[i].isDown = 2;
				 resList.list[i].localLink = vlink;
			 }
		 }
	 }
	 cacheSet(indexList, resList);
 }
 // 设置文件播放缓存
 function setVideoPlayCache(vid){
	 var resList = getIndexCache();
	 var list = resList.list;
	 if (list.length==0) {
		 mui.toast('没有缓存'); return
	 }
	 for (var i=0;i<list.length;i++) {
		 if (list[i].videoId==vid) {
			 resList.list[i].isPlay = 1;
		 }
	 }
	 cacheSet(indexList, resList);
 }
 /** 
  * 清理缓存
  * fname 要清理的文件名
  * */ 
 function clearFiles(fname){
 	mui.toast('开始清理。。')
 	mui.plusReady(function(){
 		// var localUrl = '_downloads/'+fname; //本地文件地址
 		// plus.io.resolveLocalFileSystemURL(
 		// 	localUrl, 
 		// 	function(entry){
 		// 		entry.remove(function(){
 		// 			mui.toast('删除成功');
 		// 		});
 		// 	}
 		// );
		/////////////////////
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/001.mp4', 
 			function(entry){
 				entry.remove(function(){
 					mui.toast('删除成功');
 				});
 			}
 		);
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/002.mp4', 
 			function(entry){
 				entry.remove(function(){
 					mui.toast('删除成功');
 				});
 			}
 		);
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/003.mp4', 
 			function(entry){
 				entry.remove(function(){
 					mui.toast('删除成功');
 				});
 			}
 		);
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/004.mp4', 
 			function(entry){
 				entry.remove(function(){
 					mui.toast('删除成功');
 				});
 			}
 		);
 		plus.io.resolveLocalFileSystemURL(
 			'_downloads/005.mp4', 
 			function(entry){
 				entry.remove(function(){
 					mui.toast('删除成功');
 				});
 			}
 		);
 	});
 }